We’ve long been bowled over by this iconic photo of software engineer Margaret Hamilton standing beside all of the code that landed us on the Moon, but little did we know what surprises awaited us in the code itself. In the 1960s, lacking the flight software for the Apollo 11 mission, programmers from MIT’s Instrumentation Laboratory had to invent a version of the esoteric assembly programming language (pages and pages of it, as you can tell from the photo). While the code has been available online since 2003—when tech researcher Ron Burkey transcribed every single line—the average software developer wasn’t really aware of it until this past week.
On July 7, former NASA intern Chris Garry uploaded all of the software onto GitHub, for programmers to pick through to their hearts’ content. And here’s the fun part: Even though the assembly language was intended to be understood more by computers than by humans, the original programmers left countless jokes, funny asides, ’60s references, and even a Shakespeare quotation in the comments.
Consider that the keyboard and display system program, which they nicknamed PINBALL_GAME_BUTTONS_AND_LIGHTS.s in the code, opens by quoting the Bard from Henry VI:
LUNAR_LANDING_GUIDANCE_EQUATIONS.s, aside from being what it says on the tin, also includes several irreverent asides, including a note about “crank[ing] the silly thing around” and a Wizard of Oz reference:
And if you noticed the BURNBABY in the above code, here’s the explanation for why one of the files is named BURN_BABY_BURN–MASTER_IGNITION_ROUTINE.s:
Maybe we’ll take a page from the Apollo 11 programmers and tag every post going forward with this:
Quartz has an awesome deep dive into the code; check it out!
Interesting little Easter eggs but again, that picture of Margaret Hamilton features a simulation print-out, not the code. This has been mentioned before.
@1, “In this picture, I am standing next to listings of the actual Apollo Guidance Computer (AGC) source code,” Hamilton says in an email. “To clarify, there are no other kinds of printouts, like debugging printouts, or logs, or what have you, in the picture.” It’s just her and her code. http://www.vox.com/2015/5/30/8689481/margaret-hamilton-apollo-software
@2: Yes, I was just checking on StackExchange to see if anything new had come out since last time. The picture shows the ~11,000 pages of AGC source code paper that were given to the keypunchers.
That’s a nice set of legs!